Method and system of invoking midlets from a web browser on a local device

ABSTRACT

Method and system for invoking MIDlets from a mobile web browser using the push registry mechanism provided by the application management software (AMS) of a local device, such as the push registry socket or push registry SMS, the local device including a mobile terminal, mobile telephone, smart phone, personal digital assistant (PDA), handset and the like.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No. 60/721,323, filed Sep. 28, 2005, the disclosure of which is incorporated herein by reference.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not applicable

REFERENCE TO SEQUENCE LISTING, A TABLE, OR A COMPUTER PROGRAM LISTING COMPACT DISC APPENDIX

Not applicable

BACKGROUND

The present invention relates to mobile communications devices, and in particular, to method and systems for invoking MIDlets from a mobile web browser using push registry mechanisms provided by the application management software (AMS) of a local device.

The present invention relates to mobile communications devices, and in particular, to method and systems for invoking MIDlets from a mobile web browser using push registry mechanisms provided by the application management software (AMS) of a local device.

Mobile Information Device Profile (MIDP) applications (referred to herein as MIDlets) are software components that car be downloaded and installed on devices that provide a Java 2 Mobile Edition (J2ME) runtime environment. Currently the MIDP 2.0 version is the newest version specified from Sun. MIDlets support a push registry for invocation of MIDlets based on external events such as short messaging service (SMS) receive, socket connection, etc. Currently, mobile phones from a variety of manufacturers support push registry SMS. Push refers to the ability to receive and act on information asynchronously, as information becomes available, instead of forcing the application to use synchronous polling techniques that increase resource use.

Web standards presently do not provide any mechanism for invoking MIDlets from mobile web browsers. The extended hypertext mark-up language (XHTML) and wireless mark-up language (WML) languages supported by mobile web browsers do not contain support for invoking local applications such as applets and activeX components. What is desired is a method and system for invoking MIDlets from a mobile web browser.

BRIEF SUMMARY OF THE INVENTION

The present invention is a method and system for invoking MIDlets from a mobile web browser using the push registry mechanism provided by the application management software (AMS) of a local device, such as the push registry socket or push registry SMS, the local device including a mobile terminal, mobile telephone, smart phone, personal digital assistant (PDA), handset and the like.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING

FIG. 1 is a sequence diagram illustrating a MIDlet invocation;

FIG. 2 is a deployment diagram of a system implementing the steps of FIG. 1;

FIG. 3 illustrates the steps of a MIDlet connection to video;

FIG. 4 is a deployment diagram of a system implementing the steps of FIG. 3;

FIG. 5 illustrates the steps of an invocation based on supported push registry mechanisms; and

FIG. 5 is a deployment diagram for the system of FIG. 5.

DETAILED DESCRIPTION

The present invention is a method and system for invoking MIDlets from a web browser on a local device, the local device including a mobile terminal, mobile telephone, smart phone, PDA, handset and the like, using the push registry mechanism provided by the AMS of the local device. Mobile device web browsers advantageously support XHTML and WML. However, these languages do not contain any language construct for invoking MIDlets residing on the local device. However, by performing an http request to a MIDlet on a local host, an application can be triggered. Referring now to FIG. 1, MIDlet 100 has registered for socket invocations in the push registry. The messages will now be described. In step 103, web browser 102 issues an http request to web server 102 requesting a service that needs interaction with a MIDlet 100 on the local device. In step 104, the http response contains a web page with a redirect to localhost. The redirect URL contains all the needed parameters for MIDlet 100. It is important that IP address 127.0.0.1 is used in the redirect URL and not the loop back address local host since the terminal will try to resolve the loop back address otherwise. This will fail since loop back address local host will then be resolved in the WAP gateway and not in the web terminal. In step 105, the http request contains all the parameters needed for the MIDlet 100. The AMS triggers MIDlet 100. MIDlet 100 reads the contents buffered in the socket and decodes the http request. The web client is hanging while the MIDlet is performing its tasks. In step 106, MIDlet 100 completes it tasks and returns with an http response containing a redirect URL to the web server. In step 107, the http request contains the result parameters from the MIDlet. In step 108, the http response from the web server contains the result based on the MIDlet results.

FIG. 2 illustrates a deployment diagram of the system which is adapted to perform the steps of FIG. 1. Such a system includes MIDlet client 201 and web browser 202 in local device 203. Local device 203 is coupled via a TCP/IP connection 204 to WAP gateway 205 which in turn is coupled to web server 206 on server platform 207 via a TCP/IP connection 204. An example of utilizing the mechanism could be in bank transactions, i.e. in an authentication session.

The present invention can be further extended to provide invocation of the MIDlet without result return to web server. For example, an invocation of a video session could be initiated from a web page in steps 103, 104 and 105 of FIG. 1. Referring to FIG. 3, after http response in step 201, MIDlet 100 would then connect to video server 200 in step 202 and start video streaming in step 203. The address to video server 200 would then typically be parts of the parameters that are passed in the message of step 105. A deployment diagram of the system which is adapted to perform the steps of FIG. 3 is displayed in FIG. 4. As seen therein, the system is similar to that of FIG. 2, with the addition of video server 401 in server platform 207.

A further aspect of the present invention is the invocation of a MIDlet based on supported push registry mechanisms. Many devices only support push registry SMS and, thus, the previously disclosed methods and systems which depend on the use of the push registry socket would not operate with the devices which only support push registry SMS. Thus a further extension of the present invention is provided. Referring to FIG. 5, in step 103, web browser 101 issues an http request to the web server requesting a service that needs interaction with a MIDlet 100 on the local device (not shown). Based on the user agent profile, the web server 102 determines whether the local device supports push registry socket or push registry SMS in the alternative fragment 500. If push registry socket is supported, the steps describes the first operand of the alt fragment chosen. This is the same as described in FIGS. 1 and 3. If only push registry SMS is supported then the steps of the second operand of 500 is chosen. In step 501, web server 102 then submits a binary SMS that might contain parameters and by this invokes the MIDlet. In step 502, MIDlet 100 completes it tasks and returns with an SMS or http request that might contain the results from the task performed by the MIDlet. In step 108, the Web server now returns the http response to the web browser. As far as the user is concerned, it is transparent whether the steps of FIG. 1 or FIG. 5 are performed. FIG. 6 provides a deployment diagram for the system which is adapted to implement the steps of FIG. 5. As seen therein, local device 203 is coupled to SMS gateway 601 via TCP/IP 204 which is coupled to server platform 207 via TCP/IP 204.

The mechanisms provided by the present invention advantageously make it possible to invoke a MIDlet from a web browser on a local device. A further extension of the present invention is adapted to permit the MIDlet to be invoked using binary SMS.

Although several embodiments of the invention have been described above in detail, this does not limit the scope of the invention, which can be practiced in a variety of embodiments. 

1. A method for invoking MIDlets from a web browser on a local device, comprising: performing an http request to a MIDlet on a local host using the push registry mechanism provided by the AMS of the local device; and triggering an application management software (AMS).
 2. The method of claim 1, further comprising: registering the MIDlet socket invocations in the push registry; issuing by a web browser an http request to a web server; requesting, via the http request, a service that requires interaction with the MIDlet on the local device; and containing in the http response a web page with a redirect URL to localhost.
 3. The method of claim 2, further comprising containing in the redirect URL all the needed parameters for the MIDlet.
 4. The method of claim 3, further comprising using, by the redirect URL, IP address 127.0.0.1.
 5. The method of claim 3, wherein the AMS triggers the MIDlet.
 6. The method of claim 5, further comprising: reading, by the MIDlet, the contents buffered in the socket; and decoding the http request.
 7. The method of claim 6, further comprising upon completing, by the MIDlet, it tasks, returning with an http response containing a redirect URL to the web server.
 8. The method of claim 7, wherein http request contains the result parameters from the MIDlet.
 9. The method of claim 8, wherein the http response from the web server contains the result based on the MIDlet results.
 10. The method of claim 1, further comprising determining, by the web server based on a user agent profile, whether the local device supports push registry socket or push registry SMS.
 11. A method for invoking a video session from a web page using a MIDlet from a web browser on a local device without a result return to a web server, comprising: performing an http request to a MIDlet on a local host using the push registry mechanism provided by the AMS of the local device; triggering an application management software (AMS); registering the MIDlet socket invocations in the push registry; issuing by a web browser an http request to a web server; requesting, via the http request, a service that requires interaction with the MIDlet on the local device; connecting to a video server; and commencing video streaming to the local device.
 12. The method of claim 11, wherein the address to the video server are parts of the parameters passed to the MIDlet.
 13. The method of claim 12, further comprising containing in the redirect URL all the needed parameters for the MIDlet.
 14. The method of claim 13, further comprising using by the redirect URL, IP address 127.0.0.1.
 15. The method of claim 13, wherein the AMS triggers the MIDlet.
 16. The method of claim 15, further comprising reading, by the MIDlet, the contents buffered in the socket; and decoding the http request.
 17. The method of claim 16, further comprising returning, upon completion of its tasks by the MIDlet, with an http response containing a redirect URL to the web server.
 18. The method of claim 17, wherein http request contains the result parameters from the MIDlet.
 19. The method of claim 18, wherein the http response from the web server contains the result based on the MIDlet results.
 20. The method of claim 11, further comprising determining, by the web server, based on a user agent profile whether the local device supports push registry socket or push registry SMS.
 21. A method of invoking MIDlets from a web browser on a local device based on supported push registry mechanisms, comprising: performing an http request to the web server requesting a service that needs interaction with a MIDlet on the local device; issuing, by a web browser, an http request to a web server; determining, by the web server, based on the user agent profile whether the local device supports push registry socket or push registry SMS; submitting, by the web server only if push registry SMS is supported, a binary SMS containing parameters and thus invoking the MIDlet; returning, upon completion of MIDlet of its tasks, an SMS or http request containing the results from the task performed by the MIDlet; and returning, by the web server, the http response to the web browser.
 22. A system for invoking MIDlets from a web browser on a local device, comprising: a MIDlet client; a web browser for use in a local device; a web server located on a server platform; a WAP gateway, the local device being coupled via a TCP/IP connection to the WAP gateway, the WAP gateway being coupled to the web server on the server platform via a TCP/IP connection.
 23. The system of claim 22, wherein the local device is one selected from the group consisting of a mobile terminal, mobile telephone, a smart phone, a personal digital assistant (PDA) and a handset.
 24. The system of claim 22, for use in an authentication session.
 25. The system of claim 22, further comprising a video server on the server platform.
 26. The system of claim 22, further comprising an SMS gateway, the local device being coupled to the SMS gateway via TCP/IP interface which is coupled to the server platform via the TCP/IP interface. 